package cn.itcast.service.cargo;

import cn.itcast.domain.cargo.Packing;
import cn.itcast.domain.cargo.PackingExample;
import com.github.pagehelper.PageInfo;

/**
 *  装箱管理模块
 */
public interface PackingService {

    /**
     *  生成装箱单
     * @param exportIds 报运单id数组
     * @return
     */
    Packing createPacking(String[] exportIds);

    /**
     *  添加装箱单
     * @param packing 装箱单
     */
    void addPacking(Packing packing);

    /**
     * 分页查询
     * @param packingExample 查询条件对象
     * @param pageNum 当前页数
     * @param pageSize 分页大小
     * @return  分页对象
     */
    PageInfo<Packing> findByPage(PackingExample packingExample, int pageNum, int pageSize);

    /**
     *  根据主键查询
     * @param packingListId 装箱单id
     * @return 装箱单
     */
    Packing findById(String packingListId);

    /**
     *  根据主键删除
     * @param packingListId 装箱单id
     */
    void delete(String packingListId);
}
